﻿using System;

namespace Mono.Cecil.Cil
{
	// Token: 0x02000133 RID: 307
	public sealed class SequencePoint
	{
		// Token: 0x170002F5 RID: 757
		// (get) Token: 0x06000BA0 RID: 2976 RVA: 0x00034A7C File Offset: 0x00032C7C
		public int Offset
		{
			get
			{
				return this.offset.Offset;
			}
		}

		// Token: 0x170002F6 RID: 758
		// (get) Token: 0x06000BA1 RID: 2977 RVA: 0x00034A9C File Offset: 0x00032C9C
		// (set) Token: 0x06000BA2 RID: 2978 RVA: 0x00006220 File Offset: 0x00004420
		public int StartLine
		{
			get
			{
				return this.start_line;
			}
			set
			{
				this.start_line = value;
			}
		}

		// Token: 0x170002F7 RID: 759
		// (get) Token: 0x06000BA3 RID: 2979 RVA: 0x00034AB4 File Offset: 0x00032CB4
		// (set) Token: 0x06000BA4 RID: 2980 RVA: 0x0000622A File Offset: 0x0000442A
		public int StartColumn
		{
			get
			{
				return this.start_column;
			}
			set
			{
				this.start_column = value;
			}
		}

		// Token: 0x170002F8 RID: 760
		// (get) Token: 0x06000BA5 RID: 2981 RVA: 0x00034ACC File Offset: 0x00032CCC
		// (set) Token: 0x06000BA6 RID: 2982 RVA: 0x00006234 File Offset: 0x00004434
		public int EndLine
		{
			get
			{
				return this.end_line;
			}
			set
			{
				this.end_line = value;
			}
		}

		// Token: 0x170002F9 RID: 761
		// (get) Token: 0x06000BA7 RID: 2983 RVA: 0x00034AE4 File Offset: 0x00032CE4
		// (set) Token: 0x06000BA8 RID: 2984 RVA: 0x0000623E File Offset: 0x0000443E
		public int EndColumn
		{
			get
			{
				return this.end_column;
			}
			set
			{
				this.end_column = value;
			}
		}

		// Token: 0x170002FA RID: 762
		// (get) Token: 0x06000BA9 RID: 2985 RVA: 0x00034AFC File Offset: 0x00032CFC
		public bool IsHidden
		{
			get
			{
				return this.start_line == 16707566 && this.start_line == this.end_line;
			}
		}

		// Token: 0x170002FB RID: 763
		// (get) Token: 0x06000BAA RID: 2986 RVA: 0x00034B2C File Offset: 0x00032D2C
		// (set) Token: 0x06000BAB RID: 2987 RVA: 0x00006248 File Offset: 0x00004448
		public Document Document
		{
			get
			{
				return this.document;
			}
			set
			{
				this.document = value;
			}
		}

		// Token: 0x06000BAC RID: 2988 RVA: 0x00034B44 File Offset: 0x00032D44
		internal SequencePoint(int offset, Document document)
		{
			bool flag = document == null;
			if (flag)
			{
				throw new ArgumentNullException("document");
			}
			this.offset = new InstructionOffset(offset);
			this.document = document;
		}

		// Token: 0x06000BAD RID: 2989 RVA: 0x00034B80 File Offset: 0x00032D80
		public SequencePoint(Instruction instruction, Document document)
		{
			bool flag = document == null;
			if (flag)
			{
				throw new ArgumentNullException("document");
			}
			this.offset = new InstructionOffset(instruction);
			this.document = document;
		}

		// Token: 0x04000724 RID: 1828
		internal InstructionOffset offset;

		// Token: 0x04000725 RID: 1829
		private Document document;

		// Token: 0x04000726 RID: 1830
		private int start_line;

		// Token: 0x04000727 RID: 1831
		private int start_column;

		// Token: 0x04000728 RID: 1832
		private int end_line;

		// Token: 0x04000729 RID: 1833
		private int end_column;
	}
}
